//
// Tables
// --------------------------------------------------


table {
  -fx-background-color: $table-bg;
}
caption {
  padding-top: $table-cell-padding;
  padding-bottom: $table-cell-padding;
  -fx-text-fill: $text-muted;
  -fx-fill: $text-muted;
  -fx-text-alignment: left;
}
th {
  -fx-text-alignment: left;
}


// Baseline styles

.table {
  //width: 100%;
  //max-width: 100%;
  -fx-max-width: 100%;
  // margin-bottom: $line-height-computed;
  // Cells
  > thead,
  > tbody,
  > tfoot {
    > tr {
      > th,
      > td {
        -fx-padding: $table-cell-padding;
        // line-height: $line-height-base;
        // vertical-align: top;
        // border-top: 1px solid $table-border-color;
      }
    }
  }
  // Bottom align for column headings
  > thead > tr > th {
    // vertical-align: bottom;
    // border-bottom: 2px solid $table-border-color;
  }
  // Remove top border from thead by default
  > caption + thead,
  > colgroup + thead,
  > thead:first-child {
    > tr:first-child {
      > th,
      > td {
        // border-top: 0;
      }
    }
  }
  // Account for multiple tbody instances
  > tbody + tbody {
    // border-top: 2px solid $table-border-color;
  }

  // Nesting
  .table {
    -fx-background-color: $body-bg;
  }
}


// Condensed table w/ half padding

.table-condensed {
  > thead,
  > tbody,
  > tfoot {
    > tr {
      > th,
      > td {
        -fx-padding: $table-condensed-cell-padding;
      }
    }
  }
}


// Bordered version
//
// Add borders all around the table and between all the columns.

.table-bordered {
  -fx-border-width: 1px;
  -fx-border-style: solid;
  -fx-border-color: $table-border-color;
  > thead,
  > tbody,
  > tfoot {
    > tr {
      > th,
      > td {
        -fx-border-width: 1px;
        -fx-border-style: solid;
        -fx-border-color: $table-border-color;
      }
    }
  }
  > thead > tr {
    > th,
    > td {
      // border-bottom-width: 2px;
    }
  }
}


// Zebra-striping
//
// Default zebra-stripe styles (alternating gray and transparent backgrounds)

.table-striped {
  > tbody > tr:nth-of-type(odd) {
    -fx-background-color: $table-bg-accent;
  }
}


// Hover effect
//
// Placed here since it has to come after the potential zebra striping

.table-hover {
  > tbody > tr:hover {
    -fx-background-color: $table-bg-hover;
  }
}


// Table cell sizing
//
// Reset default table behavior

//table col[class*="col-"] {
//  position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)
//  float: none;
//  display: table-column;
//}
//table {
//  td,
//  th {
//    &[class*="col-"] {
//      position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)
//      float: none;
//      display: table-cell;
//    }
//  }
//}


// Table backgrounds
//
// Exact selectors below required to override `.table-striped` and prevent
// inheritance to nested tables.

// Generate the contextual variants
@include table-row-variant('active', $table-bg-active);
@include table-row-variant('success', $state-success-bg);
@include table-row-variant('info', $state-info-bg);
@include table-row-variant('warning', $state-warning-bg);
@include table-row-variant('danger', $state-danger-bg);


// Responsive tables
//
// Wrap your tables in `.table-responsive` and we'll make them mobile friendly
// by enabling horizontal scrolling. Only applies <768px. Everything above that
// will display normally.

//.table-responsive {
//  overflow-x: auto;
//  min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)
//
//  @media screen and (max-width: $screen-xs-max) {
//    width: 100%;
//    margin-bottom: ($line-height-computed * 0.75);
//    overflow-y: hidden;
//    -ms-overflow-style: -ms-autohiding-scrollbar;
//    border: 1px solid $table-border-color;
//
//    // Tighten up spacing
//    > .table {
//      margin-bottom: 0;
//
//      // Ensure the content doesn't wrap
//      > thead,
//      > tbody,
//      > tfoot {
//        > tr {
//          > th,
//          > td {
//            white-space: nowrap;
//          }
//        }
//      }
//    }
//
//    // Special overrides for the bordered tables
//    > .table-bordered {
//      border: 0;
//
//      // Nuke the appropriate borders so that the parent can handle them
//      > thead,
//      > tbody,
//      > tfoot {
//        > tr {
//          > th:first-child,
//          > td:first-child {
//            border-left: 0;
//          }
//          > th:last-child,
//          > td:last-child {
//            border-right: 0;
//          }
//        }
//      }
//
//      // Only nuke the last row's bottom-border in `tbody` and `tfoot` since
//      // chances are there will be only one `tr` in a `thead` and that would
//      // remove the border altogether.
//      > tbody,
//      > tfoot {
//        > tr:last-child {
//          > th,
//          > td {
//            border-bottom: 0;
//          }
//        }
//      }
//
//    }
//  }
//}
